Inhalt Vorige Nächste Homepage
;============================================================================
; Diese Funktion wandelt einen String, soweit möglich, in eine 32-Bit-Binär-
; zahl (LONG) um. Der String darf außer den Ziffern 0-9, den Buchstaben aA-zZ,
; an führender Stelle auch ein Minuszeichen sowie an beliebiger Stelle einen
; Dezimalpunkt enthalten. Die Umwandlung erfolgt auf Wunsch vorzeichenbehaftet
; oder vorzeichenlos mit der angegebenen Zahlenbasis.
;----------------------------------------------------------------------------
; Synopsis:    value = StringToInt32 (Int32String, Flag, Base)
;               D0                        A0        D2   D3!
;
; Eingaben:    A0 --> STRPTR auf den umzuwandelnden String(+0)
;              D2 --> BOOL   - TRUE , vorzeichenbehaftet umwandeln
;                            - FALSE, vorzeichenlos umwandeln
;              D3 --> UWORD  - 2-36: die Zahlenbasis, welche zur Umrechnung
;                                    benutzt werden soll
;                            - null: Zahlenbasis abhängig vom Präfix des
;                                    Strings: '0x' od. '0X' = Basis 16
;                                                      '0'  = Basis 8
;                                                     sonst = Basis 10
;
; Ergebnis:    D0 --> LONG die durch den String repräsentierte 32-Bit-Zahl
;
; Bemerkung:   Wenn Sie einen Dezimalpunkt im String angeben, dann wird nur
;              der Vorkommawert (INTEGER) umgewandelt.
;
;   ACHTUNG:   Da das Ergebnis ja stets jeden beliebigen Wert annehmen kann,
;   ¯¯¯¯¯¯¯¯   ist es nicht möglich, eine generelle Fehlermeldung Über das
;              Rückgabe-Register auszugeben. Wenn Sie also nicht garantieren
;              können, daß es sich um einen auswertbaren Zahlenstring
;              handelte, dann sollten Sie im Anschluß an diese Funktion immer
;              LastError() aufrufen, um festzustellen, ob das Ergebnis
;              gültig ist, oder ob ein Fehler auftrat. (s.a. extradefs.i)
;              Dabei gelten die gleichen Fehlercodes wie bei StringToLong().
;
; Siehe auch:  Int32ToString(), Int64ToString(), FFPToString(),
;              SGLToString(), DBLToString(),
;============================================================================

Inhalt Vorige Nächste Homepage